The invention relates to a data processing device which includes a microprocessor and an additional arithmetic unit, and also to a portable data carrier provided with such a data processing device.
Data processing devices of this kind, notably integrated in a single semiconductor chip, are known in principle, for example from the data sheet concerning the Philips Integrated Circuit P83C852. This integrated circuit is preferably incorporated in portable, card-like data carriers, for example, having the format of a credit card, and are preferably used to encrypt data according to a non-symmetrical encryption method or to decrypt such data. For this purpose inter alia data blocks must be exponentiated with a key number modulo a constant, the constant comprising a large number of digits so as to achieve as effective encryption as possible. The arithmetic steps required for this purpose can in principle also be performed by the microprocessor; however, this would require too much time, so that an additional, special arithmetic unit is integrated in the chip, together with the microprocessor, said arithmetic unit being optimized in respect of the calculation steps required for encryption. The connection between the microprocessor and the additional arithmetic unit is established via special registers, controlling the data transfer, and via at least one data memory which is accessed by the microprocessor as well as by the additional arithmetic unit.
Such known integrated circuits with a microprocessor and an additional arithmetic unit have the drawback that after completion of a processing step or a processing cycle by the additional arithmetic unit, the microprocessor must load the registers again with new values for at least partly new operands with which the next processing cycle commences. However, this implies a substantial loss of time so that the overall data processing device requires too much time for data encryption or decryption, notably in the case of rather long key numbers.